package com.ruofeng.app.kotlin.common.dsl.`fun`

import org.junit.Test

/**
 * Created by 邱鹏 on 2017/8/26.
 */
interface A {
    fun foo() {
        println("A")
    }    // 默认实现, 打印"A"

    fun bar()
}

interface B {
    fun foo() {
        println("B")
    }

    fun bar() {
        println("bar")
    }
}

// 多继承时，显式指定 super<A>.foo() 以去冲突
class D : A, B {
    override fun foo() {
        super<A>.foo()
        super<B>.foo()
    }

    override fun bar() {
        super.bar()
    }
}

class TestReport {
    @Test
    fun testMoreExtends() {
        D().foo()
    }
}